I got the following error while uploading a file using FileUpload control. I solved by getting the file contents in bytes so you can assign to it.
public void Compress()
{
string fileWithExt = Path.GetFileName(FileUpload1.FileName);
string zipFile = fileWithExt + ".zip";
string zipFilePath = Path.Combine(Server.MapPath("~/Uploads"), zipFile);
using (FileStream target = new FileStream(zipFilePath, FileMode.Create, FileAccess.Write))
using (GZipStream zipstream = new GZipStream(target, CompressionMode.Compress))
{
byte[] data = File.ReadAllBytes(Path.GetFileName(FileUpload1.FileName));
zipstream.Write(data, 0, data.Length);
zipstream.Flush();
}
}
Exception message:
Solution:
You just replace the above code with the highlighted code.
byte[] fileBytes = FileUpload1.FileBytes;
using (FileStream target = new FileStream(zipFilePath, FileMode.Create, FileAccess.Write))
using (GZipStream zipstream = new GZipStream(target, CompressionMode.Compress))
{
byte[] data = fileBytes;
zipstream.Write(data, 0, data.Length);
zipstream.Flush(); }
Post your comments / questions
Recent Article
- How to create custom 404 error page in Django?
- Requested setting INSTALLED_APPS, but settings are not configured. You must either define..
- ValueError:All arrays must be of the same length - Python
- Check hostname requires server hostname - SOLVED
- How to restrict access to the page Access only for logged user in Django
- Migration admin.0001_initial is applied before its dependency admin.0001_initial on database default
- Add or change a related_name argument to the definition for 'auth.User.groups' or 'DriverUser.groups'. -Django ERROR
- Addition of two numbers in django python
Related Article